/**
 * 
 */
package com.nari.heatshare.service;

import java.io.File;
import java.util.Date;

import com.nari.coreframe.service.IGenericService;
import com.nari.heatshare.model.IAssignMeterDataFile;
import com.nari.platform.model.PageCond;
import com.nari.platform.model.ResponseMsg;
import com.nari.platform.model.ResultWithPageCond;

/**
 * 
 * @author Xiaopeng
 * @date 2013-8-18
 */
public interface IAssignMeterDataFileService extends IGenericService<IAssignMeterDataFile, String> {

	/**
	 * 分页查询分配表数据文件列表
	 * @param fileName 数据文件名(可选)
	 * @param startDate 起始上传日期(可选)
	 * @param endDate 终止上传日期(可选)
	 * @param pageCond
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2013-9-1
	 */
	public ResultWithPageCond<IAssignMeterDataFile> queryDataFilePage(String fileName, Date startDate, 
			Date endDate, PageCond pageCond) throws Exception;
	
	/**
	 * 保存上传的分配表数据文件
	 * @param attachFile 数据文件附件
	 * @param fileName 数据文件名
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2013-9-1
	 */
	public ResponseMsg saveDataFileUpload(File attachFile, String fileName) throws Exception;
	
	/**
	 * 根据唯一标识删除分配表数据文件
	 * @param dataFileUID
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2013-9-1
	 */
	public ResponseMsg deleteDataFileByUID(String dataFileUID) throws Exception;
}
